# Copyright 2023 The IREE Authors
#
# Licensed under the Apache License v2.0 with LLVM Exceptions.
# See https://llvm.org/LICENSE.txt for license information.
# SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

# Tests for common transforms.

load("//build_tools/bazel:enforce_glob.bzl", "enforce_glob")
load("//build_tools/bazel:iree_lit_test.bzl", "iree_lit_test_suite")

package(
    features = ["layering_check"],
    licenses = ["notice"],  # Apache 2.0
)

iree_lit_test_suite(
    name = "lit",
    srcs = enforce_glob(
        [
            "gpu_apply_derived_thread_config.mlir",
            "gpu_apply_tiling_level.mlir",
            "gpu_check_resource_usage.mlir",
            "gpu_create_fast_slow_path.mlir",
            "gpu_distribute.mlir",
            "gpu_distribute_copy_using_forall.mlir",
            "gpu_distribute_forall.mlir",
            "gpu_distribute_scf_for.mlir",
            "gpu_distribute_shared_memory.mlir",
            "gpu_generalize_named_ops.mlir",
            "gpu_pack_to_instrinsics.mlir",
            "gpu_fuse_and_hoist_forall.mlir",
            "gpu_greedily_distribute_to_threads.mlir",
            "gpu_infer_memory_space.mlir",
            "gpu_combine_value_barriers.mlir",
            "gpu_lower_to_ukernels.mlir",
            "gpu_nested_layout_contract_amdgpu.mlir",
            "gpu_nested_layout_vector_distribution.mlir",
            "gpu_nested_layout_vector_distribution_multi_reduce.mlir",
            "gpu_nested_layout_vector_distribution_step.mlir",
            "gpu_pad_operands.mlir",
            "gpu_pipeline.mlir",
            "gpu_promote_matmul_operands.mlir",
            "gpu_reorder_workgroups_static.mlir",
            "gpu_reorder_workgroups.mlir",
            "gpu_reuse_shared_memory_allocs.mlir",
            "gpu_tensor_alloc.mlir",
            "gpu_tensor_tile.mlir",
            "gpu_tile.mlir",
            "gpu_tile_reduction.mlir",
            "gpu_vector_alloc.mlir",
            "gpu_vector_distribution.mlir",
            "gpu_verify_distribution.mlir",
            "reduce_bank_conflicts.mlir",
            "transform_gpu_distribute_shared_memory.mlir",
            "transform_gpu_reduce_bank_conflicts.mlir",
            "vector_reduction_to_gpu.mlir",
        ],
        include = ["*.mlir"],
    ),
    cfg = "//compiler:lit.cfg.py",
    tools = [
        "//tools:iree-opt",
        "@llvm-project//llvm:FileCheck",
    ],
)
